Factors Impacting Novice Code Comprehension in a Tutor for Introductory Computer Science

نویسندگان

  • Leigh Ann Sudol-DeLyser
  • Jonathan Steinhart
چکیده

To test the effect of questions regarding the low-level details of a program compared to questions regarding the more abstract nature of the algorithms, a tutoring environment was constructed. Prior work has shown a strong correlation between students’ perception of the global goals of a program in a code comprehension task and their ability to write code to solve problems[1; 2; 3]. Using these tutoring data, we model the students’ learning progression through the activities and compare student performance on common tutoring questions. The models were evaluated for predictive factors in student performance. Performance on common questions was dependent upon the factors of the design as well as the students’ performance and how many questions they had completed. These results can help give us insight into the type of practice students need to better comprehend code and points to types of feedback to explore in future work. In the fall of 2010, introductory computer science students from Carnegie Mellon University (N=236) participated in a study to determine the effects of interacting with a code comprehension exercise. Students engaged with the tutor as a part of a homework assignment in their introductory computer science course. Three different instructors teach the course, and students were drawn from all classes. Students were randomly assigned to conditions pairing Abstraction vs Tracing with Context vs. NoContext. In the contextualized conditions, the examples that students saw included a one-sentence description of the context, and variables names were changed to match the context. As a part of the tutor, students interacted with 30 code comprehension questions. The 30 questions referred to about 10 different code segments, implementing various algorithms (e.g., sum, search, sort, rotate). Each code segment had a series of three questions associated with it. The first question was a tracing question and was seen by all students, regardless of condition, and is referred to as the common question. The second and third question varied by condition. In the Tracing condition, students were asked to trace the code with two other data sets. In the Abstract condition, students were asked questions about the global goals of the algorithm, or the role of its components. Code examples were presented to all students in the same order, and the first 6 were selected to be easier than the last 4.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Experimental Evaluation of a Program Visualisation Tool for Use in Computer Science Education

This paper presents an experimental evaluation of a program visualisation tool. Computer science students in an introductory object oriented programming course in Java were asked to respond to a series of questions regarding concepts common to the writing and debugging of code at a novice level. Statistical analysis of data collected from this experiment revealed that a diagrammatic representat...

متن کامل

Eye Movements in Programming Education II: Analyzing the Novice’s Gaze

Identifying the differences between novice and expert programmers has been a long-standing question in the epistemology and learning research area for decades. With the advent of cheap eye tracking technology, experiments can be undertaken to objectively explore these differences at a much more fine-grained time-scale and with much larger numbers of experimental subjects than ever before. In th...

متن کامل

ChiQat-Tutor: An Integrated Environment for Learning Recursion

Novice Computer Science (CS) students struggle learning recursion for reasons such as unfamiliarity with recursive thinking and difficulty in visualizing program execution. Many tasks in CS require a thorough understanding of recursion. We introduce the recursion module of ChiQat-Tutor, an environment for learning CS algorithms and data structures. ChiQat-Tutor uses the pedagogical tool of Recu...

متن کامل

Extended Game Platform for Novice Programmers

In an attempt to recruit and retain computer science majors, game design courses have become increasingly popular in academia. Game design encompasses multiple stages of product development, takes an average of two or more years and includes a team of individuals who possess strong programming abilities. Additionally, game development platforms consists of complex architectures that are difficu...

متن کامل

Measurement of Complexity and Comprehension of a Program Through a Cognitive Approach

The inherent complexity of the software systems creates problems in the software engineering industry. Numerous techniques have been designed to comprehend the fundamental characteristics of software systems. To understand the software, it is necessary to know about the complexity level of the source code. Cognitive informatics perform an important role for better understanding the complexity o...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011